﻿using Renci.Data.Interop.OpenGIS.Gml_32;
using Renci.Data.Interop.OpenGIS.Xlink;
namespace Renci.Data.Interop.OpenGIS.Swe_102
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.opengis.net/swe/1.0.2")]
    public class AbstractConditionalTypeCondition : IAssociationAttributeGroup
    {
        /// <remarks/>
        //[System.Xml.Serialization.XmlElementAttribute("AbstractDataArray", typeof(AbstractDataArrayType))]
        [System.Xml.Serialization.XmlElementAttribute("DataArray", typeof(DataArrayType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("Curve", typeof(CurveType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("SquareMatrix", typeof(SquareMatrixType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        //[System.Xml.Serialization.XmlElementAttribute("AbstractDataRecord", typeof(AbstractDataRecordType))]
        [System.Xml.Serialization.XmlElementAttribute("DataRecord", typeof(DataRecordType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("SimpleDataRecord", typeof(SimpleDataRecordType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("ConditionalData", typeof(ConditionalDataType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("ConditionalValue", typeof(ConditionalValueType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("NormalizedCurve", typeof(NormalizedCurveType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("Position", typeof(PositionType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("GeoLocationArea", typeof(GeoLocationArea), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("Envelope", typeof(EnvelopeType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        [System.Xml.Serialization.XmlElementAttribute("Vector", typeof(VectorType), Namespace = "http://www.opengis.net/swe/1.0.2")]
        public AbstractDataComponentType Item { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("name", DataType = "token")]
        public string Name { get; set; }

        #region IAssociationAttributeGroup Members

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("nilReason", Namespace = "http://www.opengis.net/gml/3.2")]
        public string NilReason { get; set; }

        /// <summary>
        /// Gets or sets a reference to an XML Schema fragment that specifies the content model of the propertys value. This is in conformance with the XML Schema Section 4.14 Referencing Schemas from Elsewhere.
        /// </summary>
        [System.Xml.Serialization.XmlAttributeAttribute("remoteSchema", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.opengis.net/gml/3.2", DataType = "anyURI")]
        public string RemoteSchema { get; set; }

        #endregion

        #region ISimpleLink Members

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("type", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink")]
        public string Type { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("href", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink", DataType = "anyURI")]
        public string Href { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("role", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink", DataType = "anyURI")]
        public string Role { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("arcrole", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink", DataType = "anyURI")]
        public string ArcRole { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("title", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink")]
        public string Title { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("show", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink")]
        public MetadataTypeShow Show { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool ShowSpecified { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("actuate", Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/1999/xlink")]
        public MetadataTypeActuate Actuate { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool ActuateSpecified { get; set; }

        #endregion   
    }
}
